package com.ysh.xiaomi.web.listeners;

import com.ysh.xiaomi.pojo.TbGoodsType;
import com.ysh.xiaomi.service.GoodTypeService;
import com.ysh.xiaomi.service.impl.GoodTypeServiceImpl;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import java.util.List;

/**
 * 袁胜虎 on 2022/8/17 11:53
 */
@WebListener
public class MyContextLoadListener implements ServletContextListener {
    GoodTypeService goodTypeService = new GoodTypeServiceImpl();

    /**
     * 程序启动了
     * @param sce
     */
    @Override
    public void contextInitialized(ServletContextEvent sce) {
        System.err.println("我们的listener开始加载缓存数据了");
        //查询数据库,然后将数据保存到servletContext中
        List<TbGoodsType> goodsTypeList = goodTypeService.findAllFirstLevelType();
        sce.getServletContext().setAttribute("goodTypes",goodsTypeList);
    }


    /**
     *  程序销毁了
     * @param sce
     */
    @Override
    public void contextDestroyed(ServletContextEvent sce) {
        //在程序退出的时候删除context中的数据
        sce.getServletContext().removeAttribute("goodTypes");
    }
}
